home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / webdav_iis.nasl < prev    next >
Text File  |  2005-01-14  |  3KB  |  98 lines

  1. #
  2. # This script was written by Renaud Deraison <deraison@cvs.nessus.org>
  3. #
  4. # See the Nessus Scripts License for details
  5. #
  6.  
  7. if(description)
  8. {
  9.   script_id(10526);
  10.   script_bugtraq_id(1756);
  11.  script_version ("$Revision: 1.10 $");
  12.   script_cve_id("CVE-2000-0951");
  13.   name["english"] = "IIS : Directory listing through WebDAV";
  14.   name["francais"] = "IIS : Listing du contenu d'un repertoire avec WebDAV";
  15.  
  16.   script_name(english:name["english"], francais:name["francais"]);
  17.   desc["english"] = "
  18. It is possible to retrieve the listing of the remote 
  19. directories accessible via HTTP, rather than their index.html, 
  20. using the Index Server service which provides WebDav capabilities
  21. to this server.
  22.  
  23. This problem allows an attacker to gain more knowledge
  24. about the remote host, and may make him aware of hidden
  25. HTML files.
  26.  
  27. Solution : disable the Index Server service, or
  28. see http://www.microsoft.com/technet/support/kb.asp?ID=272079
  29. Risk factor : Low";
  30.  
  31.   desc["francais"] = "
  32. Il est possible d'obtenir la liste du contenu des repertoires
  33. distants accessibles par HTTP, plutot que leur fichier index.html,
  34. en utilisant le serveyr de services d'indexage (Index Server).
  35.  
  36.  Ce problΦme permet α un pirate d'obtenir plus d'informations
  37. sur la machine attaquΘe, ainsi que de dΘcouvrir la prΘsence de
  38. fichiers HTML cachΘs.
  39.  
  40. Solution : dΘsactivez le serveur de services d'indexage, ou lisez
  41. http://www.microsoft.com/technet/support/kb.asp?ID=272079
  42.  
  43. Facteur de risque : Faible";
  44.  
  45.  script_description(english:desc["english"], francais:desc["francais"]);
  46.  
  47.  summary["english"] = "Checks the presence of the Index Server service";
  48.  summary["francais"] = "VΘrifie la prΘsence du serveur d'indexage";
  49.  script_summary(english:summary["english"], francais:summary["francais"]);
  50.  script_category(ACT_GATHER_INFO);
  51.  
  52.  script_copyright(english:"This script is Copyright (C) 2000 Renaud Deraison",
  53.                 francais:"Ce script est Copyright (C) 2000 Renaud Deraison");
  54.  
  55.  family["english"] = "CGI abuses";
  56.  family["francais"] = "Abus de CGI";
  57.  
  58.  script_family(english:family["english"], francais:family["francais"]);
  59.  
  60.  script_dependencie("find_service.nes", "http_version.nasl", "www_fingerprinting_hmap.nasl");
  61.  script_require_ports("Services/www", 80);
  62.  exit(0);
  63. }
  64.  
  65. include("http_func.inc");
  66.  
  67. port = get_http_port(default:80);
  68.  
  69. sig = get_kb_item("www/hmap/" + port + "/description");
  70. if ( sig && "IIS" >!< sig ) exit(0);
  71.  
  72. if(get_port_state(port))
  73. {
  74.   soc = http_open_socket(port);
  75.   if(soc)
  76.   {
  77.   quote = raw_string(0x22);
  78.   req = string("SEARCH / HTTP/1.1\r\n",
  79.              "Host: ", get_host_name(), "\r\n",
  80.          "Content-Type: text/xml\r\n",
  81.          "Content-Length: 133\r\n\r\n",
  82.          "<?xml version=", quote, "1.0", quote, "?>\r\n",
  83.          "<g:searchrequest xmlns:g=", quote, "DAV:", quote, ">\r\n",
  84.          "<g:sql>\r\n",
  85.          "Select ", quote, "DAV:displayname", quote, " from scope()\r\n",
  86.          "</g:sql>\r\n",
  87.          "</g:searchrequest>\r\n");
  88.   send(socket:soc, data:req);
  89.   result = recv_line(socket:soc, length:2048);
  90.   r = http_recv(socket:soc);
  91.   http_close_socket(soc);
  92.   if("HTTP/1.1 207 " >< result)
  93.    {
  94.     if(("DAV:" >< r) && ((".asp" >< r)||(".inc" >< r)))security_warning(port);
  95.    }
  96.   }
  97. }
  98.